# coding:utf8

# SparkSession对象的导包，对象是来自于pyspark.sql包中
from pyspark.sql import SparkSession

if __name__ == '__main__':
    # 构建SparkSession执行环境入口对象
    spark = SparkSession.builder.\
        appName("test").\
        master("local[*]").\
        getOrCreate()

    # 通过SparkSession对象获取SparkContext对象
    sc = spark.sparkContext

    # SparkSOL的HelloWorld
    df = spark.read.csv("../xian_rent/rent_v2.csv", sep=',', header=True)
    # 展示表结构
    df.printSchema()

    # 注册成零时表，可以通过sql使用
    df.createTempView("rent_data")

    # 1. SQL 风格
    spark.sql("""
        select * from rent_data where price >= 8000 limit 5
    """).show()

    # 2. DSL 风格
    df.where("price >= 8000").limit(5).show()